using UnityEngine;

namespace UnityX
{
    public class UIPage : MonoBehaviour
    {
        // 页面是否打开
        public bool IsOpen { get; protected set; }

        public UIPage()
        {
            UISystem.Add(this);
        }
        // 当 MonoBehaviour 将被销毁时调用此函数
        public virtual void OnDestroy()
        {
            UISystem.Del(this);
        }
        // 打开页面时调用，可在子类重写此方法以实现自定义功能
        public virtual void UIOpen()
        {
            IsOpen = true;
            gameObject.SetActive(true);
        }
        // 关闭页面时调用，可在子类重写此方法以实现自定义功能
        public virtual void UIClose()
        {
            IsOpen = false;
            gameObject.SetActive(false);
        }
    }
}
